/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package db.core.interfaces;


import core.School;
import core.Program;
import core.Course;
import java.util.Collection;

/**
 *
 * @author Anton
 */
public interface SchoolDAOCore
{    
    School getSchoolById(long id);

    Collection<String> searchForStringSchools(String beginsWith, int maxResult);
    Collection<School> searchForObjectSchools(String beginsWith);
    
    Collection<School> getSchoolsByName(String name);
    Collection<School> getAllSchools();
    
    void addProgramToSchool(School school, Program program);
    void deleteProgramFromSchool(School school, Program program);

    void addCourseToSchool(School school, Course course);
    void deleteCourseFromSchool(School school, Course course);

    void addSchool(School school);
    void updateSchool(School school);
    void deleteSchool(School school);
}
